1. Technical Field
The present invention relates to a system and method that inoculates a computer system against computer viruses. More particularly, the present invention relates to a system and method that uses a peer-to-peer network to inoculate a computer systems against viruses detected at another computer system.
2. Description of the Related Art
Anti-virus programs are almost a necessity when using most computer networks, such as the Internet. Most anti-virus programs use a set of virus definitions in order to analyze files and detect viruses. The virus definitions are updated as new viruses are developed and spread by malevolent individuals. The updated definitions are then able to detect and eradicate the new virus.
Currently, updates to a computer system's anti-virus definitions are propagated in a rather haphazard fashion, such as the user periodically requesting updated definitions from an anti-virus provider. These “pulls” that are requested by the user can either be scheduled pulls (e.g., every night at midnight), or interactive pulls where the updates are sent in response to a user requesting updated definitions. In addition, in many corporate environments, anti-virus definitions can be “pushed” to the client computers from a central server or other administrator computer system.
A challenge with the current environment is that an infected computer system is often unaware that it has infected files until it receives the next update to its virus definitions. Meanwhile, computer systems with updated virus definitions that receive infected files from the infected computer system have no automated means of providing the infected computer system with updated virus information and the local user of the system often does not know the origin of the infected computer file. Even when the origin of the infected file is known, the most common means of notifying the user of the infected computer system is via a telephone call or email message letting the user of the infected computer system know of the problem and suggesting that the user take steps to update their virus definitions (e.g., by requesting updated virus definitions from an anti-virus program provider).